﻿ //扩展String类功能
//删除字符串二边空格
   String.prototype.trim = function()
   {
    return this.replace(/(^[\s]*)|([\s]*$)/g, "");
   };
   //删除字符串左边空格
   String.prototype.lTrim = function()
   {
    return this.replace(/(^[\s]*)/g, "");
   };
   //删除字符串右边空格
   String.prototype.rTrim = function()
   {
    return this.replace(/([\s]*$)/g, "");
   };

//--------------------------------------------------------------------- 
//chkUtil.js 

 //定义一个可静态调用方法的js类
function ChkUtil() { }
//校验是否为空(先删除二边空格再验证)
ChkUtil.isNull = function (str) {
 if (null == str || ""== str.trim()) {
  return true;
 } else {
  return false;
 }
};
//校验是否全是数字
ChkUtil.isDigit  = function (str) {
 var patrn=/^\d+$/;
 return patrn.test(str);
};
//校验是否是整数
ChkUtil.isInteger = function (str) {
 var patrn=/^([+-]?)(\d+)$/;
 return patrn.test(str);
};
//校验是否为正整数
ChkUtil.isPlusInteger = function (str) {
 var patrn=/^([+]?)(\d+)$/;
 return patrn.test(str);
};
//校验是否为负整数
ChkUtil.isMinusInteger = function (str) {
 var patrn=/^-(\d+)$/;
 return patrn.test(str);
};
//校验是否为浮点数
ChkUtil.isFloat=function(str){
 var patrn=/^([+-]?)\d*\.\d+$/;
 return patrn.test(str);
};
//校验是否为正浮点数
ChkUtil.isPlusFloat=function(str){
  var patrn=/^([+]?)\d*\.\d+$/;
  return patrn.test(str);
};
//校验是否为负浮点数
ChkUtil.isMinusFloat=function(str){
  var patrn=/^-\d*\.\d+$/;
  return patrn.test(str);
};
//校验是否仅中文
ChkUtil.isChinese=function(str){
 var patrn=/[\u4E00-\u9FA5\uF900-\uFA2D]+$/;
 return patrn.test(str);
};
//校验是否仅ACSII字符
ChkUtil.isAcsii=function(str){
var patrn=/^[\x00-\xFF]+$/;
return patrn.test(str);
};
//校验手机号码
ChkUtil.isMobile = function (str) {
 var patrn = /^0?1((3[0-9]{1})|(59)){1}[0-9]{8}$/;
 return patrn.test(str);
};
//校验电话号码
ChkUtil.isPhone = function (str) {
 var patrn = /^(0[\d]{2,3}-)?\d{6,8}(-\d{3,4})?$/;
 return patrn.test(str);
};
//校验URL地址
ChkUtil.isUrl=function(str){
var patrn= /^http[s]?:\/\/[\w-]+(\.[\w-]+)+([\w-\.\/?%&=]*)?$/;
return patrn.test(str);
};
//校验电邮地址
ChkUtil.isEmail = function (str) {
 var patrn = /^[\w-]+@[\w-]+(\.[\w-]+)+$/;
 return patrn.test(str);
};
//校验邮编
ChkUtil.isZipCode = function (str) {
 var patrn = /^\d{6}$/;
 return patrn.test(str);
};
//校验合法时间
ChkUtil.isDate = function (str) {
  if(!/\d{4}(\.|\/|\-)\d{1,2}(\.|\/|\-)\d{1,2}/.test(str)){
    return false;
  }
  var r = str.match(/\d{1,4}/g);
  if(r==null){return false;};
  var d= new Date(r[0], r[1]-1, r[2]);
  return (d.getFullYear()==r[0]&&(d.getMonth()+1)==r[1]&&d.getDate()==r[2]);
};
//校验字符串：只能输入6-20个字母、数字、下划线(常用手校验用户名和密码)
ChkUtil.isString6_20=function(str){
 var patrn=/^(\w){6,20}$/;
 return patrn.test(str);
};
/* 
用途：检查输入字符串是否符合金额格式 
格式定义为带小数的正数，小数点后最多三位 
输入： 
s：字符串 
返回： 
如果通过验证返回true,否则返回false 
 
*/
ChkUtil.isMoney = function (s) {
    //var regu = "^[0-9]+[\.][0-9]{0,3}$";
	var regu = "^([0-9]+)[\.]{0,1}[0-9]{0,3}$";
    var re = new RegExp(regu);
    if (re.test(s)) {
        return true;
    } else {
        return false;
    }
}


ChkUtil.Date = function(){
	var datelocalnow=new Date(); 
	var datelocalyear=datelocalnow.getFullYear(); 
	var datelocalmonth=(datelocalmonth="0"+(datelocalnow.getMonth()+1)).substr(datelocalmonth.length-2,2); 
	var datelocalday=(datelocalday="0"+datelocalnow.getDate()).substr(datelocalday.length-2,2); 
	var dates = datelocalyear+"-"+datelocalmonth+"-"+datelocalday;
	if(arguments.length == 0){
		return dates;
	}
}
